home *** CD-ROM | disk | FTP | other *** search
Wrap
/* ====================================================================== DESC: Common Alert Functions for the Administer/Analyze Operations PLATFORMS: >= MS IE 4.0 USAGE NOTES: ====================================================================== */ // Syslog Check Handling function processSyslogCheckAdd() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; var AndCheck = (AL_SLAnd.checked) ? "1" :"0"; var ExpCheck = "0"; var Precedence = AL_SLPrec.selectedIndex; // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+GetSelectedFacilities()+"~"+GetSelectedSeverities()+"~"+AndCheck+"~"+ExpCheck+"~"; pStrg += Precedence+"~"+AL_SLTag.value+"`"+AL_SLContent.value+"`"; // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.SyslogCheckAdd(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processSLAddOpComplete(SLAStat) { var wrkarr = new Array(); wrkarr = SLAStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(SLAStat,true); processResetButton(); // go reset return; } ALupMode = ""; ALMode = ""; // reset mode processAlLookupReset(); } /* Initiate read for File Check Computers */ function processPopulateSyslogCheckComputers() { if ( RpmCC_AL.SyslogCheckLookup(curAGRPID) ) { ALupMode = ""; PINP_Bsy = false; top.Rstatus.Pstat("Unable to start the Computer lookup request",true); } else { CompIdLupArr = ""; // Computer Id Array ALupMode = "SLComputerLookupPopIn"; // Mode top.Rstatus.Pstat("One moment while Computer lookup request completes"); } } function processSLLookupOpComplete(SLLStat) { var wrkarr = new Array(); var pararr = new Array(); var tarr = new Array(); var farr = new Array(); wrkarr = SLLStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(SLLStat,true); processPopInError(); // go reset return; } wrkarr = SLLStat.split(";"); // parse the lookup record pararr = wrkarr[0].split("~"); // get Alert Group parameters // List selected Facilities for ( var i=0; i<=FacilityMax; i++ ) { FACObjectCheckArr[i] = "0"; } farr = pararr[1].split(","); for ( var i=0; i<farr.length; i++ ) { FACObjectCheckArr[parseInt(farr[i],10)] = "1"; } displayFACObjectChoices(0); // display them // List selected Severities for ( var i=0; i<=SeverityMax; i++ ) { SEVObjectCheckArr[i] = "0"; } farr = pararr[2].split(","); for ( var i=0; i<farr.length; i++ ) { SEVObjectCheckArr[parseInt(farr[i],10)] = "1"; } displayFACObjectChoices(1); // display them AL_SLAnd.checked = (pararr[3] == "0") ? "": "checked"; AL_SLPrec.selectedIndex = parseInt(pararr[5],10); tarr = pararr[6].split("`"); AL_SLTag.value = tarr[0]; AL_SLContent.value = tarr[1]; AL_Suspend.checked = (tarr[3] == "1") ? "": "checked"; CompIdLupArr = wrkarr[1]; // get Computer ID array wrkarr = CompIdLupArr.split(","); CountOfCompsRcvd = wrkarr.length; AL_CCOneSyslogCheck.style.overflow = ( CountOfCompsRcvd > 9 ) ? "scroll" : ""; processPopulateCounterInputComplete(); } function processSyslogCheckEdit() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; var AndCheck = (AL_SLAnd.checked) ? "1" :"0"; var ExpCheck = "0"; var Precedence = AL_SLPrec.selectedIndex; // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+GetSelectedFacilities()+"~"+GetSelectedSeverities()+"~"+AndCheck+"~"+ExpCheck+"~"; pStrg += Precedence+"~"+AL_SLTag.value+"`"+AL_SLContent.value+"`"; // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.SyslogCheckReplace(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processSLReplaceOpComplete(SLRStat) { var wrkarr = new Array(); wrkarr = SLRStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(SLRStat,true); processResetButton(); // go reset } else { ALMode = ""; finishEditComplete(); } } function processSLDeleteOpComplete(SLDStat) { } function GetSelectedSeverities() { var SArr = ""; for ( var i=0; i<=SeverityMax; i++ ) { if ( SEVObjectCheckArr[i] == "1" ) { if ( SArr.length > 0 ) SArr += ","; SArr += i; } } return SArr; } function GetSelectedFacilities() { var SArr = ""; for ( var i=0; i<=FacilityMax; i++ ) { if ( FACObjectCheckArr[i] == "1" ) { if ( SArr.length > 0 ) SArr += ","; SArr += i; } } return SArr; } var FSFlag = 0; function procFacilityClick() { if ( ALMode == "New" || ALMode == "Edit" ) { FSFlag = 0; SyslogText.innerText = "Select SYSLOG Facility Codes For Watching"; processFacilityList(); } } function procSeverityClick() { if ( ALMode == "New" || ALMode == "Edit" ) { FSFlag = 1; SyslogText.innerText = "Select SYSLOG Severity Codes For Watching"; processFacilityList(); } } FACObjectCheckArr = new Array(); SEVObjectCheckArr = new Array(); function processFacilityList() { FAC_Data.style.backgroundColor = "white"; PopUpFAC.style.display = ""; var CCEs = ""; var FSMax = (FSFlag == 0) ? FacilityMax : SeverityMax; var FSCode = ""; for ( var i=0; i<=FSMax; i++ ) { CCEs += "<table border='0' cellpadding='1' cellSpacing='0' width='230'><tr>"; CCEs += "<td width='10'></td><td width='11' align='center'><img id='oid_chk"+i; if ( ((FSFlag == 0) ? FACObjectCheckArr[i] : SEVObjectCheckArr[i]) == "1" ) { CCEs += "' checked='1' src='images/Checked.gif'"; } else { CCEs += "' checked='0' src='images/Unchecked.gif'"; } CCEs += "style='cursor:hand' onclick='procFACCmpImgClick(this)' width='9' height='9'></td>"; CCEs += "<td width='*' id='oid_nme"+i; FSCode = (FSFlag == 0) ? GetFacility(""+i) : GetSeverity(""+i); CCEs += "' style='cursor:hand' onclick='procFACCmpImgClick(this)' class='optext'> " + FSCode +"</td>"; CCEs += "</tr></table>"; } FAC_Data.style.overflow = ( i > 15 ) ? "scroll" : ""; FAC_Data.innerHTML = CCEs; } function processFAC_OK() { PopUpFAC.style.display = "none"; if ( CurrentAT == ProcessCheckType ) { AL_ProcessName.value = EnumProcesses.options[EnumProcesses.selectedIndex].text; AL_ProcessPath.value = EnumProcesses.options[EnumProcesses.selectedIndex].value; processProcNotify(); return; } displayFACObjectChoices(FSFlag); // display them } function processFAC_Cancel() { PopUpFAC.style.display = "none"; } /* Process Click to Check or Uncheck an OID */ function procFACCmpImgClick(CmpIm) { isx = CmpIm.id; if ( isx.charAt(0) != "o") return; var cx = isx.substring(7,isx.length); // Strip off index var CObj = document.all["oid_chk"+cx]; // Clicked Check box if ( CObj.checked == "1" ) { // if currently Checked, Uncheck CObj.src = "images/Unchecked.gif"; CObj.checked = "0"; // Set Unchecked if ( FSFlag == 0) FACObjectCheckArr[[parseInt(cx,10)]] = "0"; else SEVObjectCheckArr[[parseInt(cx,10)]] = "0"; } else { // otherwise Check CObj.src = "images/Checked.gif"; CObj.checked = "1"; // Set Checked if ( FSFlag == 0) FACObjectCheckArr[[parseInt(cx,10)]] = "1"; else SEVObjectCheckArr[[parseInt(cx,10)]] = "1"; } } function displayFACObjectChoices(FSF) { if (CurSelTab != "CounterTab") return; // don't update if not visible if ( FSF == 0 ) { AL_SLFacility.innerHTML = ""; // clear for ( var i=0; i<FACObjectCheckArr.length; i++ ) { if ( FACObjectCheckArr[i] == "1" ) { // if Chosen addElementToSelect(AL_SLFacility,GetFacility(""+i)); } } } else { AL_SLSeverity.innerHTML = ""; // clear for ( var i=0; i<SEVObjectCheckArr.length; i++ ) { if ( SEVObjectCheckArr[i] == "1" ) { // if Chosen addElementToSelect(AL_SLSeverity,GetSeverity(""+i)); } } } } var FacilityMax = 23; function GetFacility(FacCode) { var csFacility; switch ( parseInt(FacCode) ) { case 0: csFacility = "Kernel"; break; case 1: csFacility = "User-Level"; break; case 2: csFacility = "Mail System"; break; case 3: csFacility = "System Daemons"; break; case 4: csFacility = "Security/Authorization (4)"; break; case 5: csFacility = "Internal by Syslogd"; break; case 6: csFacility = "Line Printer Subsystem"; break; case 7: csFacility = "Network News Subsystem"; break; case 8: csFacility = "UUCP Subsystem"; break; case 9: csFacility = "Clock Daemon (9)"; break; case 10: csFacility = "Security/Authorization (10)"; break; case 11: csFacility = "FTP Daemon"; break; case 12: csFacility = "NTP Subsystem"; break; case 13: csFacility = "Log Audit"; break; case 14: csFacility = "Log Alert"; break; case 15: csFacility = "Clock Daemon (15)"; break; case 16: csFacility = "Local Use 0"; break; case 17: csFacility = "Local Use 1"; break; case 18: csFacility = "Local Use 2"; break; case 19: csFacility = "Local Use 3"; break; case 20: csFacility = "Local Use 4"; break; case 21: csFacility = "Local Use 5"; break; case 22: csFacility = "Local Use 6"; break; case 23: csFacility = "Local Use 7"; break; default: csFacility = FacCode; } return csFacility; } var SeverityMax = 7; function GetSeverity(SevCode) { var csSeverity; switch ( parseInt(SevCode,10) ) { case 0: csSeverity = "Emergency"; break; case 1: csSeverity = "Alert"; break; case 2: csSeverity = "Critical"; break; case 3: csSeverity = "Error"; break; case 4: csSeverity = "Warning"; break; case 5: csSeverity = "Notice"; break; case 6: csSeverity = "Informational"; break; case 7: csSeverity = "Debug"; break; default: csSeverity = SevCode; } return csSeverity; } //------------------------------------------------------------------------------ // File Check Handling function processFileCheckAdd() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+AL_FileCheckPath.value+"~"+AL_FileCheckString.value+"`"+AL_FileCheckSize.value; pStrg += "`"+((AL_DeltaSize.checked)?"1":"0")+"`"+((AL_DeltaDT.checked)?"1":"0"); pStrg += "`"+((AL_FileAnd.checked)?"1":"0")+"`"+((AL_FileNot.checked)?"1":"0"); pStrg += "`"+AL_FileInterval.value+"`"+""; //AL_FCPrec.selectedIndex; // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.FileCheckAdd(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processFCAddOpComplete(FCAStat) { var wrkarr = new Array(); wrkarr = FCAStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(FCAStat,true); processResetButton(); // go reset return; } ALupMode = ""; ALMode = ""; // reset mode processAlLookupReset(); } /* Initiate read for File Check Computers */ function processPopulateFileCheckComputers() { if ( RpmCC_AL.FileCheckLookup(curAGRPID) ) { ALupMode = ""; PINP_Bsy = false; top.Rstatus.Pstat("Unable to start the Computer lookup request",true); } else { CompIdLupArr = ""; // Computer Id Array ALupMode = "FCComputerLookupPopIn"; // Mode top.Rstatus.Pstat("One moment while Computer lookup request completes"); } } function processFCLookupOpComplete(FCLStat) { var wrkarr = new Array(); var pararr = new Array(); wrkarr = FCLStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(FCLStat,true); processPopInError(); // go reset return; } wrkarr = FCLStat.split(";"); // parse the lookup record pararr = wrkarr[0].split("~"); // get Alert Group parameters CompIdLupArr = wrkarr[1]; // get Computer ID array wrkarr = CompIdLupArr.split(","); CountOfCompsRcvd = wrkarr.length; AL_FileCheckPath.value = pararr[1]; wrkarr = pararr[2].split("`"); AL_FileCheckString.value = wrkarr[0]; AL_FileCheckSize.value = wrkarr[1]; AL_DeltaSize.checked = (wrkarr[2] == "1") ? "checked" : ""; AL_DeltaDT.checked = (wrkarr[3] == "1") ? "checked" : ""; if ( wrkarr.length >= 5 ) { AL_FileAnd.checked = (wrkarr[4] == "1") ? "checked" : ""; AL_FileNot.checked = (wrkarr[5] == "1") ? "checked" : ""; AL_FileInterval.value = wrkarr[6]; //AL_FCPrec.selectedIndex = parseInt(wrkarr[7],10); } else { AL_FileAnd.checked = ""; AL_FileNot.checked = ""; AL_FileInterval.value = ""; //AL_FCPrec.selectedIndex = 0; } AL_Suspend.checked = (pararr[3] == "1") ? "": "checked"; AL_CCOneFileCheck.style.overflow = ( CountOfCompsRcvd > 9 ) ? "scroll" : ""; processPopulateCounterInputComplete(); } function processFileCheckEdit() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+AL_FileCheckPath.value+"~"+AL_FileCheckString.value+"`"+AL_FileCheckSize.value; pStrg += "`"+((AL_DeltaSize.checked)?"1":"0")+"`"+((AL_DeltaDT.checked)?"1":"0"); pStrg += "`"+((AL_FileAnd.checked)?"1":"0")+"`"+((AL_FileNot.checked)?"1":"0"); pStrg += "`"+AL_FileInterval.value+"`"+""; //AL_FCPrec.selectedIndex; // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.FileCheckReplace(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processFCReplaceOpComplete(FCRStat) { var wrkarr = new Array(); wrkarr = FCRStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(FCRStat,true); processResetButton(); // go reset } else { ALMode = ""; finishEditComplete(); } } function processFCDeleteOpComplete(FCDStat) { } //------------------------------------------------------------------------------ // Process Check Handling function processProcessCheckAdd() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; // Substitute tilde in path if var sarr = new Array(); var warr = new Array(); sarr = AL_ProcessPath.value.split("~"); if ( sarr.length > 1 ) { AL_ProcessPath.value = sarr.join("`"); } // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+AL_ProcessName.value+"~"+AL_ProcessPath.value+"~"+ProcCPUMax.value; pStrg += "~"+ProcMemory.value+"~"+ProcPP.value+"~"+ProcNPP.value+"~"+ProcPF.value pStrg += "~~"+((ProcRunningRadio[1].checked)?"1":"0")+"~"+((ProcNotifyOnly.checked)?"1":"0"); pStrg += "~"+((ProcTerminate.checked)?"1":"0")+"~"+((ProcRestart.checked)?"1":"0"); pStrg += "~"+ProcDuration.value+"[+]"+ProcInstanceCount.value; // Misc Parms pStrg += "[+]"; // Misc Parms - Precedence warr = ProcExclWildCard.value.split(";"); pStrg += "[+]"+warr.join(":"); // Misc Parms // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.ProcessCheckAdd(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processPRCAddOpComplete(PCAStat) { var wrkarr = new Array(); wrkarr = PCAStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(PCAStat,true); processResetButton(); // go reset return; } ALupMode = ""; ALMode = ""; // reset mode processAlLookupReset(); } /* Initiate read for File Check Computers */ function processPopulateProcessCheckComputers() { if ( RpmCC_AL.ProcessCheckLookup(curAGRPID) ) { ALupMode = ""; PINP_Bsy = false; top.Rstatus.Pstat("Unable to start the Computer lookup request",true); } else { CompIdLupArr = ""; // Computer Id Array ALupMode = "PCComputerLookupPopIn"; // Mode top.Rstatus.Pstat("One moment while Computer lookup request completes"); } } function processPRCLookupOpComplete(PCLStat) { var wrkarr = new Array(); var pararr = new Array(); var miscarr = new Array(); wrkarr = PCLStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(PCLStat,true); processPopInError(); // go reset return; } wrkarr = PCLStat.split(";"); // parse the lookup record pararr = wrkarr[0].split("~"); // get Alert Group parameters CompIdLupArr = wrkarr[1]; // get Computer ID array wrkarr = CompIdLupArr.split(","); CountOfCompsRcvd = wrkarr.length; var Max = 0; AL_ProcessName.value = pararr[1]; var pp = pararr[2].split("`"); AL_ProcessPath.value = pp.join("~");; Max = parseInt(pararr[4],10); ProcCPUMax.value = (Max == 0)? "" : Max; Max = parseInt(pararr[5],10); ProcMemory.value = (Max == 0)? "" : Max; Max = parseInt(pararr[6],10); ProcPP.value = (Max == 0)? "" : Max; Max = parseInt(pararr[7],10); ProcNPP.value = (Max == 0)? "" : Max; Max = parseInt(pararr[8],10); ProcPF.value = (Max == 0)? "" : Max; if ( pararr[14] == "" ) { ProcDuration.value = ""; ProcInstanceCount.value = ""; ProcExclWildCard.value = ""; } else { miscarr = pararr[14].split("[+]"); ProcDuration.value = miscarr[0]; ProcInstanceCount.value = miscarr[1]; wrkarr.length = 0; wrkarr = miscarr[3].split(":"); ProcExclWildCard.value = wrkarr.join(";"); } ProcRunningRadio[1].checked = (pararr[10] == "1") ? "checked" : ""; ProcNotifyOnly.checked = (pararr[11] == "1") ? "checked" : ""; ProcRestart.checked = (pararr[12] == "1") ? "checked" : ""; ProcTerminate.checked = (pararr[13] == "1") ? "checked" : ""; AL_Suspend.checked = (pararr[3] == "1") ? "": "checked"; AL_CCOneProcessCheck.style.overflow = ( CountOfCompsRcvd > 9 ) ? "scroll" : ""; processPopulateCounterInputComplete(); } function processProcessCheckEdit() { var LogSus = (AL_Suspend.checked) ? "0" :"1"; // Substitute tilde in path if var sarr = new Array(); sarr = AL_ProcessPath.value.split("~"); if ( sarr.length > 1 ) { AL_ProcessPath.value = sarr.join("`"); } // Build fixed part of argument string var pStrg = curAGRPID+"~"+LogSus+"~"+AL_ProcessName.value+"~"+AL_ProcessPath.value+"~"+ProcCPUMax.value; pStrg += "~"+ProcMemory.value+"~"+ProcPP.value+"~"+ProcNPP.value+"~"+ProcPF.value pStrg += "~~"+((ProcRunningRadio[1].checked)?"1":"0")+"~"+((ProcNotifyOnly.checked)?"1":"0"); pStrg += "~"+((ProcTerminate.checked)?"1":"0")+"~"+((ProcRestart.checked)?"1":"0"); pStrg += "~"+ProcDuration.value+"[+]"+ProcInstanceCount.value; // Misc Parms pStrg += "[+]"; // Misc Parms - Precedence warr = ProcExclWildCard.value.split(";"); pStrg += "[+]"+warr.join(":"); // Misc Parms // Append Computer IDs for ( var i=0; i<ELM_Ar.length; i++ ) { pStrg += ";"+ELM_Ar[i]; } if ( RpmCC_AL.ProcessCheckReplace(pStrg) ) { top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } function processPRCReplaceOpComplete(PCRStat) { var wrkarr = new Array(); wrkarr = PCRStat.split(":"); // parse the lookup record if ( wrkarr[0] == "Err" ) { ALMode = ""; // reset mode top.Rstatus.Pstat(PCRStat,true); processResetButton(); // go reset } else { ALMode = ""; finishEditComplete(); } } function processPRCDeleteOpComplete(PCDStat) { } function processProcRadio(Val) { if ( Val == 1 ) { ProcNotifyOnly.checked = ""; } processProcNotify(); } function processProcNotify() { ProcRestart.className = "idis"; ProcRestart.disabled = "disabled"; ProcRestart.checked = ""; ProcTerminate.className = "idis"; ProcTerminate.disabled = "disabled"; ProcTerminate.checked = ""; ProcRunningRadio[0].disabled = ""; ProcRunningRadio[1].disabled = ""; if ( AL_ProcessName.value == "*" ) { ProcTerminate.className = ""; ProcTerminate.disabled = ""; ProcTerminate.checked = ""; ProcRunningRadio[1].checked = "checked" ProcRunningRadio[0].disabled = "disabled"; ProcRunningRadio[1].disabled = "disabled"; } if ( !ProcNotifyOnly.checked ) { if ( ProcRunningRadio[0].checked ) { ProcRestart.className = ""; ProcRestart.disabled = ""; ProcRestart.checked = "checked"; } else { ProcTerminate.className = ""; ProcTerminate.disabled = ""; ProcTerminate.checked = "checked"; } } else { if ( ProcRunningRadio[0].checked ) { ProcRestart.className = ""; ProcRestart.disabled = ""; ProcRestart.checked = ""; } else { ProcTerminate.className = ""; ProcTerminate.disabled = ""; ProcTerminate.checked = ""; } } } function procProcessEnumClick() { if ( ALMode == "New" || ALMode == "Edit" ) { FSFlag = 0; SyslogText.innerText = "List Processes And Select"; FAC_Data.style.backgroundColor = "activeborder"; PopUpFAC.style.display = ""; var CCEs = ""; CCEs += "<br><table border='0' cellpadding='1' cellSpacing='0' width='230'>"; CCEs += "<tr><td width='100%' align='center' class='inputlabel'>Select a Server to View Its Current Running Processes</td></tr>"; CCEs += "<tr><td width='100%' align='center'><select id='EnumServers' onchange='processEnumServerSelect()' style='width:150'></select></td></tr>"; CCEs += "</table><br><br><br>"; CCEs += "<table border='0' cellpadding='1' cellSpacing='0' width='230'>"; CCEs += "<tr><td width='100%' align='center' class='inputlabel'>Select a Process to Set a Watch On</td></tr>"; CCEs += "<tr><td width='100%' align='center'><select id='EnumProcesses' style='width:150'></select></td></tr>"; CCEs += "</table>"; } FAC_Data.innerHTML = CCEs; Tid = setTimeout("procListServers()",10); // delay } function procListServers() { addElementToSelect(EnumServers,"Select a server..."); for ( var i=0, j=0; i<CompRecCount; ++i, j+=CompRecLength ) { addElementToSelect(EnumServers,AC_CompStoreArr[j+2]); } } var ServSelIndx = 0; function processEnumServerSelect() { if (ServSelIndx != 0) { EnumServers.selectedIndex = ServSelIndx; return; //ignore } ServSelIndx = EnumServers.selectedIndex; if ( ServSelIndx == 0 ) return; var j = (ServSelIndx-1) * CompRecLength; var strg = AC_CompStoreArr[j]+"~"+AC_CompStoreArr[j+2]; RpmCC_AL.NetStatFunction("EnumerateProcesses~"+strg); EnumProcesses.innerHTML = ""; SetCursor("wait"); top.banner.processStartComm(); SetButtonState(FAC_OKButton,"1"); } function getEnumProcesses(csarg) { SetCursor("auto"); top.banner.processStopCommX(); SetButtonState(FAC_OKButton,"0"); ServSelIndx = 0; var wrkarr = new Array(); wrkarr = csarg.split(";"); if ( wrkarr[1].substring(0,3) == "Err" ) { alert("Cannot list processes from this server!\n\n"+wrkarr[1]+"\n\nPlease select another server."); return; } var entarr = new Array(); var entry = ""; for ( var i=0; i<wrkarr.length; i++ ) { entry = wrkarr[i]; wrkarr[i] = entry.toLowerCase(); } wrkarr.sort(); var elObj = null; for ( var i=0; i<wrkarr.length; i++ ) { entarr.length = 0; entarr = wrkarr[i].split("`"); if ( entarr[0] == "enumprocesses" || entarr[0] == "unknown" ) continue; elObj = addElementToSelect(EnumProcesses,entarr[0]); elObj.value = entarr[1]; //save path } } function processProcParms1() { ProcParms2.style.display = "none"; ProcParms1.style.display = ""; } function processProcParms2() { ProcParms1.style.display = "none"; ProcParms2.style.display = ""; } //------------------------------------------------------------------------ /* Process Click on selected Tab */ var CurSelTab = null; // current selected tab function processGeneralClick(th) { if ( ALupMode != "" /*&& th.id != "CounterTab" */) return; CounterUI.style.display="none"; SchedUI.style.display="none"; ActsUI.style.display="none"; CounterTab.className="TabUnsel"; SchedTab.className="TabUnsel"; ActsTab.className="TabUnsel"; th.className="TabSel"; if (AL_AlertSel.style.display == "" && ALupMode == "") { AL_AlertSel.disabled = ""; if (AL_AlertSel.style.visibility != "hidden") { AL_AlertSel.focus(); // default focus to Name field } } CurSelTab = th.id; switch ( th.id ) { case "CounterTab" : CounterUI.style.display=""; // Enable this Tab's view if ( CurrentAT == CounterType ) { // Counter checked if ( AL_Thrsh.className == "" ) { AL_Thrsh.focus(); // Set focus } } else if ( CurrentAT == SNMPTrapType ) { displayOIDChoices(); } else if ( CurrentAT == SyslogCheckType ) { displayFACObjectChoices(0); // display Facility & Severity displayFACObjectChoices(1); } break; case "SchedTab" : SchedUI.style.display=""; // Enable this Tab's view if ( AL_Sched.className == "" && AL_Sched.style.display != "") { AL_Sched.focus(); // Set focus } break; case "ActsTab" : ActsUI.style.display=""; // Enable this Tab's view break; } } /* Process Click on Radio Button */ function processTypeClick() { if ( ALMode == "New" || ALMode == "Edit" ) { fixupEveryTime(); } var CImgObj = document.all["CTabI"]; if ( CurrentAT == ServiceType ) { // if Service checked MaxAlertOption.style.display = ""; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/sAdminServers.gif" align="absmiddle" height="16" width="16"> IP Service'; ResetTypes(); servicetype.style.display=""; servicesched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT ServerWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == EventLogType ) { // if Event Log checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/sEventViewer.gif" align="absmiddle" height="16" width="16"> EVENTLog'; ResetTypes(); elogtype.style.display=""; elogsched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT EventLogWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == SNMPTrapType ) { // if SNMP Trap checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/SNMPTrapDisplaySm.gif" align="absmiddle" height="16" width="16"> SNMPTrap'; ResetTypes(); snmptrap_type.style.display=""; snmptrapsched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT SNMPTrapWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == UserType ) { // if User checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = "none"; AL_Suspend.style.display = "none"; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/monitoritalert.gif" align="absmiddle" height="16" width="16"> USER'; ResetTypes(); usertype.style.display=""; usersched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT User Alert Notification"; // init Email Subj field } } else if ( CurrentAT == WinServicesType ) { // if Windows Services checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/WinServices.gif" align="absmiddle" height="18" width="18">SERVICE'; ResetTypes(); winservicestype.style.display=""; winservicessched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT WinServicesWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == FileCheckType ) { // if File Check checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/NewImg.gif" align="absmiddle" height="16" width="16"> FILE'; ResetTypes(); filechecktype.style.display=""; filechecktype.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT FileWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == ProcessCheckType ) { // if Process Check checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/ProcessWatch.gif" align="absmiddle" height="16" width="16"> PROCESS'; ResetTypes(); processchecktype.style.display=""; processchecktype.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT ProcessWatch Alert Notification"; // init Email Subj field } } else if ( CurrentAT == SyslogCheckType ) { // if Syslog Check checked MaxAlertOption.style.display = "none"; AL_SuspendText.style.display = ""; AL_Suspend.style.display = ""; //PLoc.style.display = "none"; CounterTab.innerHTML = '<img src="images/SyslogDisplaySm.gif" align="absmiddle" height="16" width="16"> SYSLOG'; ResetTypes(); syslogchecktype.style.display=""; syslogchecktype.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT SYSLOGWatch Alert Notification"; // init Email Subj field } } else { MaxAlertOption.style.display = ""; AL_SuspendText.style.display = "none"; AL_Suspend.style.display = "none"; //PLoc.style.display = ""; CounterTab.innerHTML = '<img src="images/Objects.gif" align="absmiddle" height="16" width="16"> COUNTER'; ResetTypes(); countertype.style.display=""; countersched.style.display=""; if ( CheckEmailSubj() ) { AL_ESubj.value = "MonitorIT CounterWatch Alert Notification"; // init Email Subj field } } } function ResetTypes() { servicetype.style.display="none"; countertype.style.display="none"; usertype.style.display="none"; elogtype.style.display="none"; snmptrap_type.style.display="none"; winservicestype.style.display="none"; filechecktype.style.display="none"; syslogchecktype.style.display="none"; processchecktype.style.display="none"; servicesched.style.display="none"; countersched.style.display="none"; usersched.style.display="none"; elogsched.style.display="none"; snmptrapsched.style.display="none"; winservicessched.style.display="none"; syslogchecksched.style.display="none"; filechecksched.style.display="none"; processchecksched.style.display="none"; } function CheckEmailSubj() { if ( AL_ESubj.value == "MonitorIT CounterWatch Alert Notification" || AL_ESubj.value == "MonitorIT EventLogWatch Alert Notification" || AL_ESubj.value == "MonitorIT User Alert Notification" || AL_ESubj.value == "MonitorIT SNMPTrapWatch Alert Notification" || AL_ESubj.value == "MonitorIT ServerWatch Alert Notification" || AL_ESubj.value == "MonitorIT WinServicesWch Alert Notification"|| AL_ESubj.value == "MonitorIT SYSLOGWatch Alert Notification" || AL_ESubj.value == "MonitorIT FileWatch Alert Notification" || AL_ESubj.value == "MonitorIT ProcessWatch Alert Notification" || AL_ESubj.value == "" ) { return true; } else { return false; } } /* Process New Button Click */ function processNewButton() { processSpecAT(); } function processNewContinue() { var wrk = new Array(); if ( PINP_Bsy == true ) return; // ignore AL_Alert.value = ""; // clear Name field AL_Desc.value = ""; // clear Description field AL_Thrsh.value = ""; // clear Threshold field AL_Dur.value = "0"; // init Duration field AL_Sched.value = " 15 Min(s)"; // clear Schedule field AL_SrvFreq.value = " 5 Min(s)"; // clear Service Frequency field AL_MaxAlerts.value = "0"; // init Max Alerts Count field AL_InactPer1.value = AL_InactPer1.value = ""; wrk = SmtpServerAddress.split("~"); AL_Smtp.value = wrk.join("; "); AL_SrvcNme.value = ""; AL_TUnder.checked = ""; AL_EveryT.checked = "checked"; AL_Suspend.checked = ""; AL_RunIt.checked = ""; AL_ENotify.checked = ""; AL_Phone.checked = ""; AL_Beeper.checked = ""; AL_EvLogName.options[0].selected = "selected"; // Select log AL_EvLogType.options[0].selected = "selected"; // Select type AL_EvSrc.value = ""; AL_EvCat.value = ""; AL_EvID.value = ""; AL_EvMsg.value = ""; AL_LogAnd.checked = "checked"; AL_LogExclude.checked = ""; AL_LogNot.checked = ""; AL_Suspend.checked = ""; AL_WSRestart.checked = "checked"; EmailText.value = ""; EmailTextDefined.style.display = "none"; AL_FileCheckPath.value = ""; AL_FileCheckString.value = ""; AL_FileCheckSize.value = ""; AL_DeltaSize.checked = ""; AL_DeltaDT.checked = ""; AL_FileAnd.checked = ""; AL_FileNot.checked = ""; AL_FileInterval.value = ""; AL_MemCheck.value = "20"; AL_HDDCheck.value = "20"; AL_ProcessPath.value = ""; AL_ProcessName.value = ""; ProcCPUMax.value = ""; ProcMemory.value = ""; ProcPP.value = ""; ProcNPP.value = ""; ProcPF.value = ""; ProcInstanceCount.value = ""; ProcDuration.value = ""; ProcExclWildCard.value = ""; ProcNotifyOnly.checked = ""; ProcRestart.checked = "checked"; ProcTerminate.checked = ""; ProcRunningRadio[0].checked = "checked"; for ( var i=0; i<=FacilityMax; i++ ) { FACObjectCheckArr[i] = "0"; } displayFACObjectChoices(0); // display them for ( var i=0; i<=SeverityMax; i++ ) { SEVObjectCheckArr[i] = "0"; } displayFACObjectChoices(1); // display them AL_SLTag.value = ""; AL_SLContent.value = ""; AL_SLAnd.checked = "checked"; // Initalize Suppress Monitoring parameters for ( var i=0; i<6; i++ ) { Suppress1[i] = Suppress2[i] = 0; } AL_InactPer1.value = ""; AL_InactPer2.value = ""; getTodayDate(); // get current D/T CDUnits = 1; CDCount = 15; // init Schedule values SrvUnits = 1; SrvCount = 5; // init Service Frequency Check values CurObjName = CurCntrName = ""; // Reset current Open Object and Counter curSrvcName = "PING"; // default to force expansion curAGRPID = null; // Reset curr Alert Grp ID CkCArr.length = 0; // reset Checked computer array LastCmpSelectedSuffix = null; CmpsSelectedCount = 0; // reset count AL_Dependency.value = ""; // preset AL_DependencySel.options[0].selected = "selected"; ALMode = "New"; // Set Mode of operation commonNew_Edit(); // Do common processing AL_Alert.focus(); } /* Process Click on Edit Button */ function processEditButton() { if ( PINP_Bsy == true ) return; // ignore ALMode = "Edit"; // Set Mode of operation commonNew_Edit(); // Do common processing } function processDuplicateButton() { if ( PINP_Bsy == true ) return; // ignore ALMode = "New"; // Set Mode of operation AL_Alert.value = ""; // clear Name field curAGRPID = null; // Reset curr Alert Grp ID CkCArr.length = 0; // reset Checked computer array LastCmpSelectedSuffix = null; CmpsSelectedCount = 0; // reset count DuplicateFlag = true; commonNew_Edit(); // Do common processing } /* Process Expand and Collapse of the Services Tree and the Object:Counters Tree */ var AlertSelDisplayState = ""; var SeveritySelDisplayState = ""; var CCOneObjSave = null; function processExpandButton(DisObj,ColObj) { if ( PopUpOID.style.display == "" ) { return; // ignore } AlertSelDisplayState = AL_AlertSel.style.display; // save state AL_AlertSel.style.display = "none"; SeveritySelDisplayState = AL_WASeveritySel.style.display; // save state AL_WASeveritySel.style.display = "none"; CCOneObjSave = DisObj; // save DisObj.className = "CCOneBoxExp"; DisObj.style.height = CCOneExpH; DisObj.style.left = CCOneExpL; ColObj.style.top = CollapseButtonTop; ColObj.style.left = CollapseButtonLeft; ColObj.style.display = ""; //CCExpandHdr.style.display = ""; if ( CurrentAT == ServiceType || CurrentAT == EventLogType || CurrentAT == SNMPTrapType || CurrentAT == SyslogCheckType || CurrentAT == FileCheckType || CurrentAT == ProcessCheckType ) { bIPSelE.style.display = ""; bIPUselE.style.display = ""; } else { bIPSelE.style.display = "none"; bIPUselE.style.display = "none"; } if ( CurrentAT == EventLogType ) { AL_LogNameSel.style.display = "none"; AL_LogTypeSel.style.display = "none"; AL_ELPrec.style.display = "none"; } else if ( CurrentAT == SNMPTrapType ) { AL_OIDName.style.display = "none"; } else if ( CurrentAT == SyslogCheckType ) { AL_SLFacility.style.display = "none"; AL_SLSeverity.style.display = "none"; AL_SLPrec.style.display = "none"; } } function processCollapseButton() { AL_AlertSel.style.display = AlertSelDisplayState; AL_WASeveritySel.style.display = SeveritySelDisplayState; var DisObj = CCOneObjSave; DisObj.className = "CCOneBox"; DisObj.style.height = CCOneBoxHeight; CollapseButton.style.display = "none"; //CCExpandHdr.style.display = "none"; if ( (ALMode == "Edit" || ALMode == "New") && CurrentAT == EventLogType ) { AL_LogNameSel.style.display = ""; AL_LogTypeSel.style.display = ""; AL_ELPrec.style.display = ""; } if ( CurrentAT == SNMPTrapType ) { AL_OIDName.style.display = ""; } else if ( CurrentAT == SyslogCheckType ) { AL_SLFacility.style.display = ""; AL_SLSeverity.style.display = ""; AL_SLPrec.style.display = ""; } } function processSel(Pflg) { if ( CurrentAT == ServiceType ) processIPSelect(Pflg); else processSelect(Pflg); } // Process SelectALL or UnselectALL function processIPSelect(Pflg) { var EObj = null, CObj = null; EObj = document.all["sexp"+CurExpServIx]; var compcount = EObj.compcount; // process each computer for ( var j=0; j<compcount; j++ ) { CObj = document.all["vima"+CurExpServIx+"_"+j]; // computer entry in tree if (CObj.checked == Pflg && CObj.inuse == "0") { procCmpImgClick(CObj); // go process } } } //Common processing for New and Edit function commonNew_Edit() { top.Rstatus.Pstat(""); if ( ALMode == "New" || AGerr == true ) { document.RunPrgmRadio.AL_PLoc[0].checked = "checked"; document.RunPrgmRadio.AL_PLoc[1].checked = ""; document.RunPrgmRadio.AL_PLoc[2].checked = ""; } LastNewName = null; /* enable input fields */ AL_Alert.className = ""; AL_Desc.className = ""; AL_Thrsh.className = ""; AL_Dur.className = ""; AL_WASeverity.style.display = "none"; AL_WASeveritySel.style.display = ""; if ( ALMode == "New" ) { if ( CurrentAT == ServiceType ) { AL_WASeveritySel.selectedIndex = 2; AL_WASeverity.value = "Critical"; } else { AL_WASeveritySel.selectedIndex = 1; AL_WASeverity.value = "Caution"; } } SetButtonState(WatchReportButton,"1"); AL_EvSrc.className = ""; AL_EvID.className = ""; AL_EvCat.className = ""; AL_EvMsg.className = ""; AL_LogAnd.className = ""; AL_LogAnd.disabled = ""; AL_LogExclude.className = ""; AL_LogExclude.disabled = ""; AL_LogNot.className = ""; AL_LogNot.disabled = ""; AL_LogName.style.display = "none"; AL_LogNameSel.style.display = ""; AL_LogType.style.display = "none"; AL_LogTypeSel.style.display = ""; AL_ELPrec.className = ""; AL_ELPrec.disabled = ""; AL_FileAnd.className = ""; AL_FileAnd.disabled = ""; AL_FileNot.className = ""; AL_FileNot.disabled = ""; //AL_FCPrec.className = ""; //AL_FCPrec.disabled = ""; AL_FileInterval.className = ""; AL_FileCheckPath.className = ""; AL_FileCheckString.className = ""; AL_FileCheckSize.className = ""; AL_FileCheckPath.disabled = ""; AL_FileCheckString.disabled = ""; AL_FileCheckSize.disabled = ""; AL_DeltaSize.className = ""; AL_DeltaSize.disabled = ""; AL_DeltaDT.className = ""; AL_DeltaDT.disabled = ""; AL_MemCheck.className = ""; AL_HDDCheck.className = ""; AL_MemCheck.disabled = ""; AL_HDDCheck.disabled = ""; AL_ProcessPath.className = ""; AL_ProcessName.className = ""; ProcCPUMax.className = ""; ProcMemory.className = ""; ProcPP.className = ""; ProcNPP.className = ""; ProcPF.className = ""; ProcInstanceCount.className = ""; ProcDuration.className = ""; ProcExclWildCard.className = ""; AL_ProcessPath.disabled = ""; AL_ProcessName.disabled = ""; ProcCPUMax.disabled = ""; ProcMemory.disabled = ""; ProcPP.disabled = ""; ProcNPP.disabled = ""; ProcPF.disabled = ""; ProcNotifyOnly.className = ""; ProcNotifyOnly.disabled = ""; PCEnumButton.style.visibility = "visible"; ProcRunningRadio[0].disabled = ""; ProcRunningRadio[0].className = ""; ProcRunningRadio[1].disabled = ""; ProcRunningRadio[1].className = ""; processProcNotify(); AL_SLFacility.className = ""; AL_SLSeverity.className = ""; AL_SLTag.className = ""; AL_SLContent.className = ""; AL_SLFacility.disabled = ""; AL_SLSeverity.disabled = ""; AL_SLTag.disabled = ""; AL_SLContent.disabled = ""; AL_SLAnd.className = ""; AL_SLAnd.disabled = ""; AL_SLPrec.className = ""; AL_SLPrec.disabled = ""; FACButton.style.visibility = "visible"; SEVButton.style.visibility = "visible"; AL_OIDName.className = ""; OIDChoiceButton.style.display = ""; document.WinSrvcRadio.AL_WinSrvcDisp[0].disabled = ""; document.WinSrvcRadio.AL_WinSrvcDisp[1].disabled = ""; document.WinSrvcRadio.AL_WinSrvcDisp[0].className = ""; document.WinSrvcRadio.AL_WinSrvcDisp[1].className = ""; AL_WSRestart.disabled = ""; AL_WSRestart.className = ""; WSTSelect.style.visibility = "visible"; WinSrvcRadioDisplay.style.visibility = "visible"; if ( AL_RunIt.checked ) { processPLocClick(); document.RunPrgmRadio.AL_PLoc[0].disabled = ""; document.RunPrgmRadio.AL_PLoc[1].disabled = ""; document.RunPrgmRadio.AL_PLoc[2].disabled = ""; } if ( AL_ENotify.checked ) { AL_EAddr.className = ""; AL_ESubj.className = ""; } if ( AL_Phone.checked ) { AL_AccessNbr.className = ""; AL_PhoneNbr.className = ""; AL_PagePswd.className = ""; AL_TTSpeak.className = ""; } if ( AL_Beeper.checked ) { AL_BeeperNbr.className = ""; AL_TTSend.className = ""; } AL_EveryT.className = ""; AL_Suspend.className = ""; AL_TUnder.className = ""; AL_RunIt.className = ""; AL_ENotify.className = ""; AL_Phone.className = ""; AL_Beeper.className = ""; AL_EveryT.disabled = ""; AL_Suspend.disabled = ""; AL_TUnder.disabled = ""; AL_RunIt.disabled = ""; AL_ENotify.disabled = ""; AL_Phone.disabled = ""; AL_Beeper.disabled = ""; fixupEveryTime(); AL_Dependency.style.display = "none"; AL_DependencySel.style.display = ""; AL_SrvFreq.style.cursor = "hand"; AL_SrvFreq.className = ""; AL_MaxAlerts.style.cursor = "hand"; AL_MaxAlerts.className = ""; AL_InactPer1.style.cursor = "hand"; AL_InactPer1.className = ""; AL_InactPer2.style.cursor = "hand"; AL_InactPer2.className = ""; AL_CWRestore.className = ""; AL_CWRestore.disabled = ""; CntrObNmeRow.style.visibility = "hidden"; //SrvcNmeRow.style.visibility = "hidden"; /* disable appropriate buttons */ SetButtonState(UNewButton,"1"); SetButtonState(UEditButton,"1"); SetButtonState(UDupButton,"1"); SetButtonState(UDeleteButton,"1"); /* enable appropriate Alert Name fields */ AL_Alert.style.display = ""; AL_AlertSel.style.display = "none"; /* format the Object:Counter:Computer box */ AL_CCOne.style.backgroundColor = "white"; AL_CCOne.style.height = CCOneBoxHeight; AL_CCOne.style.overflow = "scroll"; AL_CCOne.innerHTML = ""; // clear display /* format the IP Services:Computer box */ AL_CCOneServ.style.backgroundColor = "white"; AL_CCOneServ.style.height = CCOneBoxHeight; AL_CCOneServ.style.overflow = "scroll"; AL_CCOneServ.innerHTML = ""; // clear display bIPSelC.style.visibility = "visible"; bIPUselC.style.visibility = "visible"; bIPSelE.style.visibility = "visible"; bIPUselE.style.visibility = "visible"; /* format the Group:Computer box */ AL_CCOneEventLog.style.backgroundColor = "white"; AL_CCOneEventLog.style.height = CCOneBoxHeight; AL_CCOneEventLog.style.overflow = "scroll"; AL_CCOneEventLog.innerHTML = ""; // clear display bELSelC.style.visibility = "visible"; bELUselC.style.visibility = "visible"; /* format the Win Services Computer box */ AL_CCOneWinServ.style.backgroundColor = "white"; AL_CCOneWinServ.style.height = CCOneBoxHeight; AL_CCOneWinServ.style.overflow = "scroll"; AL_CCOneWinServ.innerHTML = ""; // clear display /* format the Object:Counter:Computer box */ AL_CCOneSNMPTrap.style.backgroundColor = "white"; AL_CCOneSNMPTrap.style.height = CCOneBoxHeight; AL_CCOneSNMPTrap.style.overflow = "scroll"; AL_CCOneSNMPTrap.innerHTML = ""; // clear display bSTSelC.style.visibility = "visible"; bSTUselC.style.visibility = "visible"; /* format the File Check Computer box */ AL_CCOneFileCheck.style.backgroundColor = "white"; AL_CCOneFileCheck.style.height = CCOneBoxHeight; AL_CCOneFileCheck.style.overflow = "scroll"; AL_CCOneFileCheck.innerHTML = ""; // clear display bFCSelC.style.visibility = "visible"; bFCUselC.style.visibility = "visible"; /* format the Process Check Computer box */ AL_CCOneProcessCheck.style.backgroundColor = "white"; AL_CCOneProcessCheck.style.height = CCOneBoxHeight; AL_CCOneProcessCheck.style.overflow = "scroll"; AL_CCOneProcessCheck.innerHTML = ""; // clear display bPCSelC.style.visibility = "visible"; bPCUselC.style.visibility = "visible"; /* format the Syslog Check Computer box */ AL_CCOneSyslogCheck.style.backgroundColor = "white"; AL_CCOneSyslogCheck.style.height = CCOneBoxHeight; AL_CCOneSyslogCheck.style.overflow = "scroll"; AL_CCOneSyslogCheck.innerHTML = ""; // clear display bSLSelC.style.visibility = "visible"; bSLUselC.style.visibility = "visible"; /* Select Counter Tab */ processGeneralClick(CounterTab); // if NEW, create all Trees, if EDIT, only appropriate Tree if ( /*ALMode == "New" || */ CurrentAT == ServiceType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "ServerWatch-" } Tid = setTimeout("processServiceTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == CounterType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "CounterWatch-" } Tid = setTimeout("processAATree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == EventLogType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "EventLogWatch-" } Tid = setTimeout("processELTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == SNMPTrapType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "SnmpTrapWatch-" } Tid = setTimeout("processSNMPTrapTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == FileCheckType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "FileWatch-" } Tid = setTimeout("processFileCheckTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == ProcessCheckType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "ProcessWatch-" } Tid = setTimeout("processProcessCheckTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == SyslogCheckType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "SyslogWatch-" } Tid = setTimeout("processSyslogCheckTree()",10); // delay 10 ms. then process Tree } else if ( CurrentAT == WinServicesType ) { if ( AL_Alert.value == "" ) { AL_Alert.value = "WinServiceWatch-" } Tid = setTimeout("processWinServicesTree()",10); // delay 10 ms. then process Tree } else { // User type if ( AL_Alert.value == "" ) { AL_Alert.value = "UserWatch-" } SetButtonState(UUpdateButton,"0"); SetButtonState(UResetButton,"0"); } } function fixupEveryTime() { AL_EveryT.className = ""; AL_EveryT.disabled = ""; // Disable Minimal Interval on those that do not support it /* if (CurrentAT == UserType || CurrentAT == FileCheckType || CurrentAT == WinServicesType || CurrentAT ==SNMPTrapType) { AL_EveryT.checked = "checked"; AL_EveryT.className = "idis"; AL_EveryT.disabled = "disabled"; } */ if ( !AL_EveryT.checked ) { AL_Sched.style.cursor = "hand"; AL_Sched.className = ""; } else { AL_Sched.style.cursor = "auto"; AL_Sched.className = "idis"; AL_Sched.value = ""; } } /* Process Click on the various Check Box parameters */ function processCheckBoxClick(th) { switch ( th.id ) { case "AL_EveryT" : if ( SchedState == "1") { // if opened processSchedClick(); // close it } if ( !th.checked) { AL_Sched.style.cursor = "hand"; AL_Sched.className = ""; if ( AL_Sched.value == "" ) { CDCount = 15; CDUnits = 1; AL_Sched.value = " " + CDCount + " " + SchedTxtArray[CDUnits]; } } else { AL_Sched.style.cursor = "auto"; AL_Sched.className = "idis"; AL_Sched.value = "" } break; case "AL_RunIt" : if ( th.checked ) { if ( !document.RunPrgmRadio.AL_PLoc[2].checked ) { AL_ExecP.className = ""; AL_ArgsP.className = ""; } document.RunPrgmRadio.AL_PLoc[0].disabled = ""; document.RunPrgmRadio.AL_PLoc[1].disabled = ""; document.RunPrgmRadio.AL_PLoc[2].disabled = ""; } else { AL_ExecP.className = "idis"; AL_ArgsP.className = "idis"; document.RunPrgmRadio.AL_PLoc[0].disabled = "disabled"; document.RunPrgmRadio.AL_PLoc[1].disabled = "disabled"; document.RunPrgmRadio.AL_PLoc[2].disabled = "disabled"; } break; case "AL_ENotify" : if ( th.checked ) { AL_EAddr.className = ""; AL_ESubj.className = ""; if ( AL_Smtp.value.length < 2 ) { top.Rstatus.Pstat("Please define a Global SMTP Server",true); alert("Please define a Global SMTP Server"); } } else { AL_EAddr.className = "idis"; AL_ESubj.className = "idis"; } break; case "AL_Phone" : if ( th.checked ) { AL_PhoneNbr.className = ""; AL_AccessNbr.className = ""; AL_PagePswd.className = ""; AL_TTSpeak.className = ""; } else { AL_PhoneNbr.className = "idis"; AL_AccessNbr.className = "idis"; AL_PagePswd.className = "idis"; AL_TTSpeak.className = "idis"; } break; case "AL_Beeper" : if ( th.checked ) { AL_BeeperNbr.className = ""; AL_TTSend.className = ""; } else { AL_BeeperNbr.className = "idis"; AL_TTSend.className = "idis"; } break; } } /* Process Read of Counters; Format One line of Counter Output*/ function processEditCounter(CntrNme,CntrDesc,OA) { CCEs += "<table border='0' cellpadding='0' cellSpacing='0' width='490'>"; linG = (LastObjectName == CurObjName) ? "White" : "I"; CCEs += "<tr><td width='25'> </td><td width='19' height='20' align='center'><img src='images/" + linG + ".gif' width='19' height='20'></td>"; if ( CntrNme == CurCntrName ) { CCEs += "<td width='19' height='20' align='center'><img id='cima" + CurObjIx + "_" + CurCntrIx; CCEs += "' expanded='1' src='images/Tminus.gif' style='cursor:hand' onclick='procCntrImgClick(this)' ocarray='"; CCEs += OA + "' width='19' height='20'></td>"; CurExpCntrIx = CurObjIx + "_" + CurCntrIx; } else { CCEs += "<td width='19' height='20' align='center'><img id='cima" + CurObjIx + "_" + CurCntrIx; CCEs += "' expanded='0' src='images/Tplus.gif' style='cursor:hand' onclick='procCntrImgClick(this)' ocarray='"; CCEs += OA + "' width='19' height='20'></td>"; } CCEs += "<td width='20' align='center'><img id='cimb" + CurObjIx + "_" + CurCntrIx + "' src='images/Counter.gif' style='cursor:hand' onclick='procCntrImgClick(this)' width='17' height='16' "; CCEs += 'title="'+ CntrDesc + '"></td>'; CCEs += "<td width='*' class='optext'>" + CntrNme + "</td>"; CCEs += "</tr></table>"; CCEs += "<div id='cexp" + CurObjIx + "_" + CurCntrIx + "' compcount='0' compchkcount='0' cntrname='" + CntrNme + "'></div>"; ++CurCntrIx; // bump index } /* Read of Counters complete; Output formatted Counters */ function processEditCounterComplete() { /* Find last refernece to "images/T" and change the "T" to an "L" */ if ( CurCntrIx == 0 ) { // if no counters ALupMode = ""; top.Rstatus.Pstat("No Counters for this Object",true); SetCursor("auto"); top.banner.processStopCommX(); return; } lix = CCEs.lastIndexOf("images/T"); CCEss = CCEs.substring(0,lix+7); CCEss += "L" + CCEs.substring(lix+8,CCEs.length); EObj = document.all["oexp"+CurObjIx]; EObj.insertAdjacentHTML("beforeEnd",CCEss); EObj.style.display = ""; EObj.cntrcount = CurCntrIx; // save count of counters refrCCOne = AL_CCOne.innerHTML; // refresh to elimninate blank line after expanded counters AL_CCOne.innerHTML = refrCCOne; document.all["oima"+CurObjIx].scrollIntoView(true); /* If a Counter is Expanded, Initiate Read for its Computers */ if ( CurCntrName != "") { // Expand Counter //* Lookup Computers for Counter Name if ( RpmCC_AL.CounterLookupNameForCompIDArray(CurObjName,CurCntrName) ) { ALupMode = ""; top.Rstatus.Pstat("Unable to start the Counter Name lookup request",true); } else { ALupMode = "CounterNameLookup"; CurCntrName = ""; top.Rstatus.Pstat("One moment while Counter Name lookup request completes"); } } else { SetCursor("auto"); top.banner.processStopCommX(); ALupMode = ""; top.Rstatus.Pstat("Request Completed"); } } /* Process Click to Expand or Contract an Object */ function procObImgClick(OIm) { isx = OIm.id; if ( isx.charAt(0) != "o" || ALupMode != "") // if not a "oimaxx" return; isx = isx.substring(4,isx.length); // Strip off storage index cx = eval(isx); // Index for object var WrkArr = new Array(); // working array var OCWrkArr = new Array(); // working array CurObjIx = cx; CurObjName = AL_OCStoreArr[cx*ObjectRecLength]; //Object Expanded Oprfx = ( LastObjectName == CurObjName ) ? "L" : "T"; // Determine if last object OObj = document.all["oima"+CurObjIx]; EObj = document.all["oexp"+CurObjIx]; if ( OObj.expanded == "1" ) { // if currently expanded OObj.src = "images/" + Oprfx + "plus.gif"; OObj.expanded = "0"; // Set contracted for ( var i=0; i<EObj.cntrcount; i++ ) { // Any computers selected under the Object? if ( document.all["cexp"+CurObjIx+"_"+i].compchkcount != 0 ) { LastCmpSelectedSuffix = null; CmpsSelectedCount = 0; // reset count break; // no need to look further } } EObj.style.display = "none"; EObj.innerHTML = ""; // Contract } else { // otherwise Expand OObj.src = "images/" + Oprfx + "minus.gif"; OObj.expanded = "1"; // Set expanded /* Lookup Counter Name and Description */ //CLOs = getObjIDArr(CurObjIx); var Wrk = new Array(); var OCA = AL_OCStoreArr[(ObjectRecLength*CurObjIx)+2].split(";"); //ObjID,CmpID Wrk = OCA[0].split(","); // get Object ID from pair of "ObjID,CompID" SetCursor("wait"); top.banner.processStartComm(); OE_ON = Wrk[0]; Tid = setTimeout("processObjectExpand()",100); // delay 100 ms. then process } } var OE_ON = ""; function processObjectExpand() { Tid = null; if ( RpmCC_AL.CounterLookupForObjCntrArray("ObjectID,"+OE_ON) ) { ALupMode = ""; top.Rstatus.Pstat("Unable to start the Counter lookup request",true); } else { CCEs = ""; // initialize output string and counter CurCntrIx = 0; ALupMode = "CounterLookupEdit"; // set Mode of operation top.Rstatus.Pstat("One moment while Counter lookup request completes"); } } /* Process Click to Expand or Contract a Counter */ function procCntrImgClick(CIm) { isx = CIm.id; if ( isx.charAt(0) != "c" || ALupMode != "") // if not a "cimaxx_xx" return; var cx = isx.substring(4,isx.length); // Strip off index CurExpCntrIx = cx; lx = cx.lastIndexOf("_"); // derive the Object's Index var dx = eval( cx.substring(0,lx) ); CurObjIx = dx; // Current Object Index CObj = document.all["cima"+cx]; EObj = document.all["cexp"+cx]; CurCntrIx = document.all["oexp"+dx].cntrcount; // Total Counter Count for this Obj LCIx = CurCntrIx-1; // Index to last Counter for assoc Obj Cpfx = (CurExpCntrIx == dx + "_" + LCIx) ? "L" : "T"; if ( CObj.expanded == "1" ) { // if currently expanded CObj.src = "images/" + Cpfx + "plus.gif"; EObj.style.display = "none"; EObj.innerHTML = ""; // Contract CObj.expanded = "0"; // Set contracted if (EObj.compchkcount != 0) { // Are computers checked? LastCmpSelectedSuffix = null; CmpsSelectedCount = 0; // reset count } } else { // otherwise Expand CObj.src = "images/" + Cpfx + "minus.gif"; CObj.expanded = "1"; // Set expanded CurObjName = AL_OCStoreArr[(ObjectRecLength*dx)]; // Obj Name //* Lookup Computers for Counter Name SetCursor("wait"); top.banner.processStartComm(); CE_ON = CurObjName; CE_CN = EObj.cntrname; Tid = setTimeout("processCounterExpand()",100); // delay 100 ms. then process } } var CE_ON = ""; var CE_CN = ""; function processCounterExpand() { Tid = null; if ( RpmCC_AL.CounterLookupNameForCompIDArray(CE_ON,CE_CN) ) { ALupMode = ""; top.Rstatus.Pstat("Unable to start the Counter Name lookup request",true); } else { ALupMode = "CounterNameLookup"; top.Rstatus.Pstat("One moment while Counter Name lookup request completes"); } } /* Process Click to Check or Uncheck a Computer */ function procCmpImgClick(CmpIm) { isx = CmpIm.id; if ( isx.charAt(0) != "p" && isx.charAt(0) != "v") // if not a "pimaxx_xx_yy" or "vimaxx_yy" return; var cx = isx.substring(4,isx.length); // Strip off index lx = cx.lastIndexOf("_"); // derive suffix to the Counter/Service DIV ID var dx = cx.substring(0,lx); var dp = "c"; var cp = "p"; var mp = "Counter"; // preset prefixes if ( CurrentAT == ServiceType ) { // if Service checked dp = "s"; cp = "v"; mp = "Service"; } DObj = document.all[dp+"exp"+dx]; // DIV for Computer Expansion CObj = document.all[cp+"ima"+cx]; // Clicked Computer Entry var IObj = document.all["pimb"+cx]; // Clicked Computer Image Entry if ( CObj.checked == "1" ) { // if currently Checked, Uncheck CObj.src = "images/Unchecked.gif"; IObj.src = "images/Computer.gif"; CObj.checked = "0"; // Set Unchecked --DObj.compchkcount; // decrement count of computers checked --CmpsSelectedCount; } else { // otherwise Check if ( DObj.compchkcount == 0 ) { // If no computers yet checked if ( CmpsSelectedCount > 0 ) { // If some computers selected elsewhere if ( confirm("Only one "+mp+", and the associated Servers/Devices, per Watch/Alert can be defined. You have Servers/Devices selected for another "+mp+"!\n Press OK to unselect those Servers/Devices and select this one.\n Press CANCEL to keep those Servers/Devices and ignore this selection.") ) { goResetSelectedComps(dp,cp); // Go reset those computers } else { return; } } } CObj.src = "images/Checked.gif"; IObj.src = "images/"+selectImage; CObj.checked = "1"; // Set Checked LastCmpSelectedSuffix = dx; // Save suffix ++DObj.compchkcount; // increment count of computers checked ++CmpsSelectedCount; } } /* Create Counter Array for Add or Replace Based on Selected Computers */ function createCounterIDArray() { var OCntrArr = new Array(); // ObjectID,CounterID Array var OCmpArr = new Array(); // ObjectID,ComputerID Array var Wrk0 = new Array(); var Wrk1 = new Array(); AAid = ""; // default no computers selected OCArray.length = 0; // init for CompID,ObjID,CntrID array for updating the Store var cx = LastCmpSelectedSuffix; if (cx == null) { return false; } /* Create an array of selected computers */ CXObj = document.all["cexp"+cx]; // DIV object for Computer expansion CkCArr.length = 0; // Reset Checked computer array for ( var i=0, j=0; i<CXObj.compcount; i++ ) { // Test each computer for Checked if ( document.all["pima"+cx+"_"+i].checked == "1" ) { CkCArr[j++] = document.all["pima"+cx+"_"+i].compid; // save Computer ID } } /* Get Array of ObjID,CntrID pairs for the selected Counter */ OCntrArr = document.all["cima"+cx].ocarray.split(";"); //ObjID,CntrID Pairs /* Get Array of ObjID,ComputerID pairs from Object store for the selected Object */ lxi = cx.lastIndexOf("_"); // derive suffix to the Object's index dxi = eval( cx.substring(0,lxi) ); OCmpArr = AL_OCStoreArr[(ObjectRecLength*dxi)+2].split(";"); //ObjID,CmpID Pairs /* Find CounterID for each Computer in CheckedComputer Array */ oclth = OCmpArr.length-1; ocntlth = OCntrArr.length-1; AIix = 0; // initialize Counter Array index for ( i=0; i<CkCArr.length; i++ ) { // For each selected computer for ( j=0; j<oclth; j++ ) { // Look for match on ComputerID with ObjID Wrk0 = OCmpArr[j].split(","); // Get ObjID and CmpID if ( CkCArr[i] == Wrk0[1] ) { // Match on CompID? for ( var k=0; k<ocntlth; k++ ) { Wrk1 = OCntrArr[k].split(","); // Get ObjID and CntrID if ( Wrk0[0] == Wrk1[0] ) { // Match on ObjID? // Increment the CounterID array if ( AIix > 0) { AAid += ";"; // array id separator } Wrk0 = Wrk1[0].split("-"); // get Instance ID AAid += Wrk1[1] + "," + Wrk0[1]; // Add CounterID,InstanceID ++AIix; // bump count/index // Increment the CompID,ObjectID,CntrID array OCArray += CkCArr[i]+","+Wrk1[0]+","+Wrk1[1]; OCArray += ";"; // triplet id separator break; } // If match on ObjID } // Look For match on ObjID with CounterID break; } // If Match on CompID } // Look for match on ComputerID with ObjID } // For each selected Computer return true; } /* Process Click on Update Button */ function processUpdateButton() { var warr = new Array(); closeCalendarTimeFields(); // make sure closed /* get input and insure required input is entered */ ANme = AL_Alert.value; if (ANme.length == 0) { // if no name entered top.Rstatus.Pstat("Please enter a Watch/Alert Name",true); alert("Please enter a Watch/Alert Name"); AL_Alert.focus(); return; } ADsc = AL_Desc.value; AEvt = (AL_EveryT.checked) ? "1" : "0"; // If Counter Selected, check its parameters if ( CurrentAT == CounterType ) { // if Counter checked if ( AEvt == "1" ) { // if Everytime is set, set Schedule to 1 sec CDUnits = 0; CDCount = 1; } AThr = AL_Thrsh.value; if (AThr.length == 0) { // if no threshold entered top.Rstatus.Pstat("Please enter an Alert Threshold",true); alert("Please enter an Alert Threshold"); processGeneralClick(CounterTab); return; } AUnd = (AL_TUnder.checked) ? "1" : "0"; ADur = AL_Dur.value; if ( AL_Suspend.checked ) { ASdt = "01/01/1999 11:59:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; } else { ASdt = "01/01/2000 0:0:0"; // default Start and Stop D/T AEdt = "12/31/2030 23:59:59"; } // Create Counter ID Array from Selected Computers var ccaStat = createCounterIDArray(); if ( ccaStat == false ) { top.Rstatus.Pstat("Please select at least one Computer for the Watch/Alert",true); alert("Please select at least one Computer for the Wathc/Alert"); processGeneralClick(CounterTab); return; } if ( AAid == "" ) { top.Rstatus.Pstat("Refresh Configure Watches/Alerts page; Inventory has changed",true); alert("Refresh Configure Watches/Alerts page; Inventory has changed"); processGeneralClick(CounterTab); return; } // Get Alert Schedule Information if ( AEvt == "0" && AL_Sched.value.length == 0) { top.Rstatus.Pstat("Please select a Minimal Notification Interval",true); alert("Please select a Minimal Notification Interval"); processGeneralClick(SchedTab); return; } ADsc = ADsc+"[]"+"]["+"]["+"]["+MaxAlertsCount+"]["+((AL_CWRestore.checked)?"1":"0")+"]["+AL_WASeveritySel.selectedIndex; } else if ( CurrentAT == UserType ) { // if User checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:50:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; } else if ( CurrentAT == SNMPTrapType ) { // if SNMP Trap checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:20:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; if ( !createSNMPTrapArray() ) { // Get array of OIDs top.Rstatus.Pstat("Please select at least one OID for the SNMP Trap Watch",true); alert("Please select at least one OID for the SNMP Trap Watch"); processGeneralClick(CounterTab); return; } if ( !createElmArray() ) { top.Rstatus.Pstat("Please select at least one Server/Device for the SNMP Trap Watch",true); alert("Please select at least one Server/Device for the SNMP Trap Watch"); processGeneralClick(CounterTab); return; } } else if ( CurrentAT == EventLogType ) { // if Event Log checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:40:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; // Create Array of Selected Computers if ( !createElmArray() ) { top.Rstatus.Pstat("Please select at least one Server for the Event Log Monitoring",true); alert("Please select at least one Server for the Event Log Monitoring"); processGeneralClick(CounterTab); return; } if ( AL_EvID.value != "" ) { if ( isNaN( parseInt(AL_EvID.value,10) ) ) { top.Rstatus.Pstat("The Event ID must be a number. Please reenter",true); alert("The Event ID must be a number. Please reenter"); processGeneralClick(CounterTab); return; } } } else if ( CurrentAT == WinServicesType ) { // if Windows Services checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:10:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; // Create Array of Selected Computers if ( !getCheckedSrvcsArray() ) { top.Rstatus.Pstat("Please select at least one Service for one Server for the Services Monitoring",true); alert("Please select at least one Service for one Server for the Services Monitoring"); processGeneralClick(CounterTab); return; } } else if ( CurrentAT == FileCheckType ) { // if File Check checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:00:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; if ( AL_FileCheckPath.value == "" ) { top.Rstatus.Pstat("Please specify a Path & File name to watch for",true); alert("Please specify a Path & File name to watch for"); processGeneralClick(CounterTab); return; } if ( !createElmArray() ) { top.Rstatus.Pstat("Please select at least one Server for the FileWatch Monitoring",true); alert("Please select at least one Server for the FileWatch Monitoring"); processGeneralClick(CounterTab); return; } } else if ( CurrentAT == ProcessCheckType ) { // if File Check checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:12:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; if ( AL_ProcessName.value == "" ) { top.Rstatus.Pstat("Please specify a Process name to watch for",true); alert("Please specify a Process name to watch for"); processGeneralClick(CounterTab); return; } if ( AL_ProcessPath.value == "" && ProcRestart.checked && ProcRunningRadio[0].checked ) { top.Rstatus.Pstat("Please specify a fully-qualified path and exceutable name for restarting the Process",true); alert("Please specify a fully-qualified path and exceutable name for restarting the Process"); processGeneralClick(CounterTab); AL_ProcessPath.focus(); return; } if ( !createElmArray() ) { top.Rstatus.Pstat("Please select at least one Server for the ProcessWatch Monitoring",true); alert("Please select at least one Server for the ProcessWatch Monitoring"); processGeneralClick(CounterTab); return; } } else if ( CurrentAT == SyslogCheckType ) { // if Syslog Check checked AAid = ""; AThr = AUnd = ADur = "0"; ASdt = "01/01/1999 11:15:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; ADsc = ADsc+"[]"+"]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; if ( GetSelectedFacilities() == "" && GetSelectedSeverities() == "" ) { top.Rstatus.Pstat("Please specify at least one Facility parameter or one Severity parameter",true); alert("Please specify at least one Facility parameter or one Severity parameter"); processGeneralClick(CounterTab); return; } if ( !createElmArray() ) { top.Rstatus.Pstat("Please select at least one Server/Device for the SyslogWatch Monitoring",true); alert("Please select at least one Server/Device for the SyslogWatch Monitoring"); processGeneralClick(CounterTab); return; } } // otherwise, get Services parameters else { AUnd = ""; ADur = ""; AThr = MaxAlertsCount; ASdt = "01/01/1999 11:30:00"; // clear Start and Stop D/T AEdt = "01/01/1999 12:00:00"; // Create Service Array of Selected Computers var scaStat = createServiceIDArray(); AAid = ""; // clear if ( scaStat == false ) { top.Rstatus.Pstat("Please select at least one Server/Device for the Service",true); alert("Please select at least one Server/Device for the Service"); processGeneralClick(CounterTab); return; } // Get Alert Dependency Info if any DependencyID = ""; // initailize if ( AL_DependencySel.selectedIndex != 0 ) { var UNM = AL_DependencySel.options[AL_DependencySel.selectedIndex].text; for (var i=0, j=0; i < AlertStoreArr.length; ++j, i+=AlertRecLength) { if ( AlertStoreArr[i] == UNM ) { DependencyID = AlertStoreArr[i+1]; break; } } } if ( SuppressMonitoringState == "1") { // if open processInactivePeriodsClick(); // close & get values } // Get Supress Monitor Info if any ADsc = ADsc+"[]"+DependencyID+"]["+Suppress1.join("^")+"]["+Suppress2.join("^")+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; } // Get Alert Schedule Information if ( AEvt == "0" && AL_Sched.value.length == 0) { top.Rstatus.Pstat("Please select a Minimal Notification Interval",true); alert("Please select a Minimal Notification Interval"); processGeneralClick(SchedTab); return; } if ( CurrentAT == CounterType ) { // if Counter checked AEvt = "1"; // insure EveryTime is always set } ASch = "0,0," + CDUnits + "," + CDCount; // Get Alert Action Information ARit = (AL_RunIt.checked) ? "1" : "0"; AEp = AL_ExecP.value; if ( document.RunPrgmRadio.AL_PLoc[1].checked ) { // if Remote checked AEp = ">"+AEp; } else if ( document.RunPrgmRadio.AL_PLoc[2].checked ) { // if Remote Reboot checked AEp = '>"RESTART"'; } if ( ARit == "1" && AEp.length == 0) { top.Rstatus.Pstat("Please select a Name of Program to Run on Alert Action",true); alert("Please select a Name of Program to Run on Alert Action"); processGeneralClick(ActsTab); processRunPSetup(); return; } AArg = AL_ArgsP.value; AEno = (AL_ENotify.checked) ? "1" : "0"; warr = AL_EAddr.value.split(";"); AEad = AL_EAddr.value = warr.join(","); if ( AEno == "1" && AEad.length == 0) { top.Rstatus.Pstat("Please select an Email Address for Alert Action",true); alert("Please select an Email Address for Alert Action"); processGeneralClick(ActsTab); processEmailSetup(); AL_EAddr.focus(); return; } if ( AEad.indexOf(";") >= 0 ) { top.Rstatus.Pstat("Please separate Email Addresses with a comma. Semi-colons are not allowed",true); alert("Please separate Email Addresses with a comma. Semi-colons are not allowed"); processGeneralClick(ActsTab); processEmailSetup(); AL_EAddr.focus(); return; } if ( AEno == "1" && AL_Smtp.value.length < 2) { top.Rstatus.Pstat("Please define the Global SMTP Server address",true); alert("Please define the Global SMTP Server address"); processGeneralClick(ActsTab); processEmailSetup(); return; } AEs = (AL_ESubj.value.length == 0) ? "MonitorIT Alert Notification" : AL_ESubj.value; var warrft = new Array(); warrft = EmailText.value.split("\x0a"); AEs += "[+]"+ warrft.join(""); APhn = (AL_Phone.checked) ? "1" : "0"; var warrAN = new Array(); warrAN = AL_AccessNbr.value.split(";"); APhnb = warrAN.join("[+]"); if ( APhn == "1" && APhnb.length == 0) { top.Rstatus.Pstat("Please specify a Pager Access number",true); alert("Please specify a Pager Access number"); processGeneralClick(ActsTab); processPagerSetup(); AL_AccessNbr.focus(); return; } ATtk = AL_TTSpeak.value; if ( APhn == "1" && ATtk.length == 0) { top.Rstatus.Pstat("Please specify some Text-To-Send",true); alert("Please specify some Text-To-Send"); processGeneralClick(ActsTab); processPagerSetup(); AL_TTSpeak.focus(); return; } APg = (AL_Beeper.checked) ? "1" : "0"; APgnb = AL_BeeperNbr.value; if ( APg == "1" && APgnb.length == 0) { top.Rstatus.Pstat("Please specify a Beeper number",true); alert("Please specify a Beeper number"); processGeneralClick(ActsTab); processBeeperSetup(); AL_BeeperNbr.focus(); return; } ATtn = AL_TTSend.value; if ( APg == "1" && ATtn.length == 0) { top.Rstatus.Pstat("Please specify some Numeric Text-To-Send",true); alert("Please specify some Numeric Text-To-Send"); processGeneralClick(ActsTab); processBeeperSetup(); AL_TTSend.focus(); return; } warrAN = AL_PhoneNbr.value.split(";"); var PhoneNbr = warrAN.join("[+]"); warrAN = AL_PagePswd.value.split(";"); var PagePswd = warrAN.join("[+]"); APhnb = APhnb + "^"+ PagePswd+";"+PhoneNbr; // inhibit Update Button now SetButtonState(UUpdateButton,"1"); // Determine if ALMode is "New" or "Edit" and send data to DataBase Server appropriately LastNewName = ANme; // save if (ALMode == "New") { lpreID = RpmCC_AL.AlertGroupPreliminaryAdd1(ANme,ADsc,AThr,AUnd,AEvt,ADur,ASch,ASdt,AEdt,AAid); prelimID = ""+lpreID; // convert to string rstat = RpmCC_AL.AlertGroupPreliminaryAdd2(prelimID,ARit,AEp,AArg,AEno,AEad,AEs,APhn,APhnb,ATtk,APg,APgnb,ATtn); if ( rstat != (-1) ) { rstat = RpmCC_AL.AlertGroupCommitAdd(prelimID); } } else { // "Edit" OrigName = AL_AlertSel.options[AlertSelectIdx].text; AltID = getAlertID(OrigName); lpreID = RpmCC_AL.AlertGroupPreliminaryReplace1(AltID,ANme,ADsc,AThr,AUnd,AEvt,ADur,ASch,ASdt,AEdt,AAid); prelimID = ""+lpreID; // convert to string rstat = RpmCC_AL.AlertGroupPreliminaryReplace2(prelimID,ARit,AEp,AArg,AEno,AEad,AEs,APhn,APhnb,ATtk,APg,APgnb,ATtn); if ( rstat != (-1) ) { rstat = RpmCC_AL.AlertGroupCommitReplace(prelimID); } } if ( rstat ) { // if unable to initiate request top.Rstatus.Pstat("Unable to start the UPDATE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent ignoreDBChangeEvent = true; top.Rstatus.Pstat("One moment while UPDATE request completes"); processGeneralClick(CounterTab); } } /* Update Local Alert Group Table Store after Replace */ function updateStore(idx) { var SrvCArr = new Array(); var PArr = new Array(); var WFreqAr = new Array(); ANme = AL_Alert.value; // Alert Name AL_AlertSel.options[idx].text = ANme; // Update name in case edited si = AlertRecLength * idx; // index into Store for correct entry AlertStoreArr[si+0] = ANme; AlertStoreArr[si+2] = (AL_Desc.value.length == 0) ? "" : AL_Desc.value; if ( CurrentAT == ServiceType ) { // if Service Alert // Reset orig settings for ( var i=0, j=0; i<AC_ServicesStoreArr.length; i+=ServicesRecLength ) { if ( AC_ServicesStoreArr[i+1] == curAGRPID ) { AC_ServicesStoreArr[i+1] = 0; // clear Alert Group ID } } // Update new settings SrvcCArr = SrvCIDArr.split(","); for ( i=0; i<AC_ServicesStoreArr.length; i+=ServicesRecLength ) { if ( AC_ServicesStoreArr[i+2] == curSrvcName ) { // if match on Service Type for ( j=0; j < SrvcCArr.length; j++ ) { // find Computer ID if ( AC_ServicesStoreArr[i] == SrvcCArr[j] ) { // if match on Comp ID AC_ServicesStoreArr[i+1] = curAGRPID; // update Alert Group ID PArr = AC_ServicesStoreArr[i+3].split("~"); // parse parameter string WFreqAr = FreqArg.split(","); // get Frequency params & Suspend param PArr[7] = WFreqAr[0]; PArr[8] = WFreqAr[1]; PArr[9] = WFreqAr[2]; PArr[10] = WFreqAr[3]; PArr[11] = WFreqAr[4]; if ( WFreqAr.length >= 7 ) { PArr[13] = WFreqAr[5]+","+WFreqAr[6]; } else { PArr[13] = ""; } AC_ServicesStoreArr[i+3] = PArr.join("~"); break; } } } } AlertStoreArr[si+3] = MaxAlertsCount; // Get Alert Dependency Info if any DependencyID = ""; // initialize if ( AL_DependencySel.selectedIndex != 0 ) { var UNM = AL_DependencySel.options[AL_DependencySel.selectedIndex].text; for (var i=0, j=0; i < AlertStoreArr.length; ++j, i+=AlertRecLength) { if ( AlertStoreArr[i] == UNM ) { DependencyID = AlertStoreArr[i+1]; break; } } } AlertStoreArr[si+23] = DependencyID+"]["+Suppress1.join("^")+"]["+Suppress2.join("^")+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; } else if ( CurrentAT == UserType || CurrentAT == EventLogType || CurrentAT == SyslogCheckType || CurrentAT == FileCheckType || CurrentAT == SNMPTrapType || CurrentAT == WinServicesType || CurrentAT == ProcessCheckType ) { // if User, EventLog, or SNMP Trap Alert AlertStoreArr[si+8] = ASdt; AlertStoreArr[si+9] = AEdt; AlertStoreArr[si+3] = "0"; AlertStoreArr[si+4] = "0"; AlertStoreArr[si+6] = "0"; AlertStoreArr[si+23] = "]["+"]["+"]["+"]["+"]["+AL_WASeveritySel.selectedIndex; } else { // otherwise Counter Alert AlertStoreArr[si+3] = (AL_Thrsh.value.length == 0) ? "" : AL_Thrsh.value; AlertStoreArr[si+4] = (AL_TUnder.checked) ? "1" : "0"; AlertStoreArr[si+6] = (AL_Dur.value.length == 0) ? "" : AL_Dur.value; AlertStoreArr[si+8] = ASdt; AlertStoreArr[si+9] = AEdt; AlertStoreArr[si+10] = OCArray; AlertStoreArr[si+23] = "]["+"]["+"]["+MaxAlertsCount+"]["+((AL_CWRestore.checked)?"1":"0")+"]["+AL_WASeveritySel.selectedIndex; } // Common parameters var warrAN = new Array(); warrAN = AL_AccessNbr.value.split(";"); var AccessNbr = warrAN.join("[+]"); warrAN = AL_PhoneNbr.value.split(";"); var PhoneNbr = warrAN.join("[+]"); warrAN = AL_PagePswd.value.split(";"); var PagePswd = warrAN.join("[+]"); AlertStoreArr[si+5] = (AL_EveryT.checked) ? "1" : "0"; AlertStoreArr[si+7] = ASch; AlertStoreArr[si+11] = (AL_RunIt.checked) ? "1" : "0"; AlertStoreArr[si+12] = (AL_ExecP.value.length == 0) ? "" : AL_ExecP.value; AlertStoreArr[si+13] = (AL_ArgsP.value.length == 0) ? "" : AL_ArgsP.value; AlertStoreArr[si+14] = (AL_ENotify.checked) ? "1" : "0"; AlertStoreArr[si+15] = (AL_EAddr.value.length == 0) ? "" : AL_EAddr.value; AlertStoreArr[si+16] = (AL_ESubj.value.length == 0) ? "" : AL_ESubj.value+"[+]"+EmailText.value; AlertStoreArr[si+17] = (AL_Phone.checked) ? "1" : "0"; AlertStoreArr[si+18] = AccessNbr + "^"+ PagePswd +";"+PhoneNbr; AlertStoreArr[si+19] = (AL_TTSpeak.value.length == 0) ? "" : AL_TTSpeak.value; AlertStoreArr[si+20] = (AL_Beeper.checked) ? "1" : "0"; AlertStoreArr[si+21] = (AL_BeeperNbr.value.length == 0) ? "" : AL_BeeperNbr.value; AlertStoreArr[si+22] = (AL_TTSend.value.length == 0) ? "" : AL_TTSend.value; } /* Process Click on Delete Button */ function processDeleteButton() { ALMode = "Delete"; // set mode of operation ANme = AL_Alert.value; // get Alert Name /* ask user to confirm delete */ if ( confirm("Are you sure you want to delete: " + ANme + " ?") ) { /* inhibit Edit and Delete now */ SetButtonState(UNewButton,"1"); SetButtonState(UEditButton,"1"); SetButtonState(UDupButton,"1"); SetButtonState(UDeleteButton,"1"); AlrtID = getAlertID(ANme); // Get Alert ID from Name // if Event Log type, delete associated records first if ( CurrentAT == EventLogType ) { // if unable to initiate request if ( RpmCC_AL.ELMonitorDelAllByAlertGroupID(AlrtID) ) { top.Rstatus.Pstat("Unable to delete the EventLogWatch",true); processResetButton(); return; } } // if SNMP Trap type, delete associated records first else if ( CurrentAT == SNMPTrapType ) { processSNMPTrapDelete(AlrtID); return; } // if Win Services Type else if ( CurrentAT == WinServicesType ) { processWinServicesDelete(AlrtID); return; } // if File Check Type else if ( CurrentAT == FileCheckType ) { // if unable to initiate request if ( RpmCC_AL.FileCheckDelete(AlrtID) ) { top.Rstatus.Pstat("Unable to delete the FileWatch",true); processResetButton(); return; } } // if Process Check Type else if ( CurrentAT == ProcessCheckType ) { // if unable to initiate request if ( RpmCC_AL.ProcessCheckDelete(AlrtID) ) { top.Rstatus.Pstat("Unable to delete the ProcessWatch",true); processResetButton(); return; } } // if Syslog Check Type else if ( CurrentAT == SyslogCheckType ) { // if unable to initiate request if ( RpmCC_AL.SyslogCheckDelete(AlrtID) ) { top.Rstatus.Pstat("Unable to delete the SyslogWatch",true); processResetButton(); return; } } /* send DELETE request to DataBase Server */ if ( RpmCC_AL.AlertGroupDelete(AlrtID) ) { top.Rstatus.Pstat("Unable to start the DELETE request",true); processResetButton(); } else { // waiting for OperationCompleteEvent ignoreDBChangeEvent = true; top.Rstatus.Pstat("One moment while DELETE request completes"); } } }